package com.pxmeta.skill.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.pxmeta.user.entity.vo.UserVO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.List;
import java.util.Map;

/**
 * <p>
 * 语聊派对表
 * </p>
 *
 * @author wcl
 * @since 2022-06-25
 */
@TableName("kt_user_skill")
@ApiModel(value = "用户技能", description = "用户技能表")
@Data
public class UserSkill implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty("主键")
    @TableId(type = IdType.ASSIGN_ID)
    private Long id;

    @ApiModelProperty("用户id")
    private Long userId;

    @ApiModelProperty("审核状态")
    private Integer status;

    @ApiModelProperty("技能类型")
    private Integer type;

    @ApiModelProperty("技能id")
    private Integer skillId;

    @ApiModelProperty("技能图标")
    private String skillIcon;

    @ApiModelProperty("技能名称")
    private String skillName;

    @ApiModelProperty(value = "等级")
    private String grade;

    @ApiModelProperty("服务价格")
    private Integer price;

    @ApiModelProperty("是否开启")
    private Boolean isOpen;

    @ApiModelProperty("认证图片,多个用逗号分割")
    private String imgUrls;

    @ApiModelProperty("技能特色")
    private String features;

    @ApiModelProperty("原价")
    private Integer originalPrice;

    @ApiModelProperty(value = "优惠")
    private String preferential;

    @ApiModelProperty("声音地址")
    private String voiceUrl;

    @ApiModelProperty("服务单位")
    private String unit;

    @ApiModelProperty(value = "地理位置")
    private String address;

    @ApiModelProperty(value = "服务用户数")
    private Integer userCount;

    @TableField(exist = false)
    @ApiModelProperty(value = "好评率")
    private Integer applauseRate = 100;

    @TableField(exist = false)
    private String account;

    @TableField(exist = false)
    @ApiModelProperty(value = "订单状态，0未下单，1待接单，2进行中，3待评价，4已完成，-1已拒绝")
    private Integer orderStatus = 0;

    @ApiModelProperty(value = "额外信息")
    private String extraInfo;

    @ApiModelProperty("描述")
    private String description;

    @ApiModelProperty("是否是主要技能")
    private Boolean isPrimary;

    @ApiModelProperty("创建时间")
    @TableField(fill = FieldFill.INSERT)
    private LocalDateTime createTime;

    @ApiModelProperty("修改时间")
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updateTime;
}
